package com.ruoyi.system.domain;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.core.domain.entity.SysUser;

/**
 * 房间信息对象 room
 * 
 * @author xyz
 * @date 2025-05-25
 */
public class Room extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private String id;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String area;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private BigDecimal price;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String status;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String groupName;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String purpose;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Long bookerId;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Long serviceStaffId;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Long djId;

    /** 预订人姓名 */
    @Excel(name = "预订人姓名")
    private String bookerName;

    /** 服务人员姓名 */
    @Excel(name = "服务人员姓名")
    private String serviceStaffName;

    /** DJ姓名 */
    @Excel(name = "DJ姓名")
    private String djName;

    /** 组内用户列表 */
    @Excel(name = "组内用户列表")
    private List<SysUser> groupNameList;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Date startTime;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Date endTime;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Long bookerEntryCount;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Long serviceStaffEntryCount;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Long djEntryCount;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private BigDecimal totalAmount;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private BigDecimal discount;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String serviceStaffPayment;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String djPayment;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String salespersonPayment;

    /** 备用字段 aa */
    @Excel(name = "备用字段 aa")
    private String aa;

    /** 备用字段 bb */
    @Excel(name = "备用字段 bb")
    private String bb;

    /** 备用字段 cc */
    @Excel(name = "备用字段 cc")
    private String cc;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Date createdAt;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Date updatedAt;

    /** 备用字段 ee */
    @Excel(name = "备用字段 ee")
    private String ee;

    /** 备用字段 ff */
    @Excel(name = "备用字段 ff")
    private String ff;

    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }

    public void setArea(String area) 
    {
        this.area = area;
    }

    public String getArea() 
    {
        return area;
    }

    public void setPrice(BigDecimal price) 
    {
        this.price = price;
    }

    public BigDecimal getPrice() 
    {
        return price;
    }

    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    public void setGroupName(String groupName) 
    {
        this.groupName = groupName;
    }

    public String getGroupName() 
    {
        return groupName;
    }

    public void setPurpose(String purpose) 
    {
        this.purpose = purpose;
    }

    public String getPurpose() 
    {
        return purpose;
    }

    public void setBookerId(Long bookerId) 
    {
        this.bookerId = bookerId;
    }

    public Long getBookerId() 
    {
        return bookerId;
    }

    public void setServiceStaffId(Long serviceStaffId) 
    {
        this.serviceStaffId = serviceStaffId;
    }

    public Long getServiceStaffId() 
    {
        return serviceStaffId;
    }

    public void setDjId(Long djId) 
    {
        this.djId = djId;
    }

    public Long getDjId() 
    {
        return djId;
    }

    public void setBookerName(String bookerName) 
    {
        this.bookerName = bookerName;
    }

    public String getBookerName() 
    {
        return bookerName;
    }

    public void setServiceStaffName(String serviceStaffName) 
    {
        this.serviceStaffName = serviceStaffName;
    }

    public String getServiceStaffName() 
    {
        return serviceStaffName;
    }

    public void setDjName(String djName) 
    {
        this.djName = djName;
    }

    public String getDjName() 
    {
        return djName;
    }

    public void setGroupNameList(List<SysUser> groupNameList) 
    {
        this.groupNameList = groupNameList;
    }

    public List<SysUser> getGroupNameList() 
    {
        return groupNameList;
    }

    public void setStartTime(Date startTime) 
    {
        this.startTime = startTime;
    }

    public Date getStartTime() 
    {
        return startTime;
    }

    public void setEndTime(Date endTime) 
    {
        this.endTime = endTime;
    }

    public Date getEndTime() 
    {
        return endTime;
    }

    public void setBookerEntryCount(Long bookerEntryCount) 
    {
        this.bookerEntryCount = bookerEntryCount;
    }

    public Long getBookerEntryCount() 
    {
        return bookerEntryCount;
    }

    public void setServiceStaffEntryCount(Long serviceStaffEntryCount) 
    {
        this.serviceStaffEntryCount = serviceStaffEntryCount;
    }

    public Long getServiceStaffEntryCount() 
    {
        return serviceStaffEntryCount;
    }

    public void setDjEntryCount(Long djEntryCount) 
    {
        this.djEntryCount = djEntryCount;
    }

    public Long getDjEntryCount() 
    {
        return djEntryCount;
    }

    public void setTotalAmount(BigDecimal totalAmount) 
    {
        this.totalAmount = totalAmount;
    }

    public BigDecimal getTotalAmount() 
    {
        return totalAmount;
    }

    public void setDiscount(BigDecimal discount) 
    {
        this.discount = discount;
    }

    public BigDecimal getDiscount() 
    {
        return discount;
    }

    public void setServiceStaffPayment(String serviceStaffPayment) 
    {
        this.serviceStaffPayment = serviceStaffPayment;
    }

    public String getServiceStaffPayment() 
    {
        return serviceStaffPayment;
    }

    public void setDjPayment(String djPayment) 
    {
        this.djPayment = djPayment;
    }

    public String getDjPayment() 
    {
        return djPayment;
    }

    public void setSalespersonPayment(String salespersonPayment) 
    {
        this.salespersonPayment = salespersonPayment;
    }

    public String getSalespersonPayment() 
    {
        return salespersonPayment;
    }

    public void setAa(String aa) 
    {
        this.aa = aa;
    }

    public String getAa() 
    {
        return aa;
    }

    public void setBb(String bb) 
    {
        this.bb = bb;
    }

    public String getBb() 
    {
        return bb;
    }

    public void setCc(String cc) 
    {
        this.cc = cc;
    }

    public String getCc() 
    {
        return cc;
    }

    public void setEe(String ee)
    {
        this.ee = ee;
    }

    public String getEe()
    {
        return ee;
    }

    public void setFf(String ff)
    {
        this.ff = ff;
    }

    public String getFf()
    {
        return ff;
    }

    public void setCreatedAt(Date createdAt) 
    {
        this.createdAt = createdAt;
    }

    public Date getCreatedAt() 
    {
        return createdAt;
    }

    public void setUpdatedAt(Date updatedAt) 
    {
        this.updatedAt = updatedAt;
    }

    public Date getUpdatedAt() 
    {
        return updatedAt;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("area", getArea())
            .append("price", getPrice())
            .append("status", getStatus())
            .append("groupName", getGroupName())
            .append("purpose", getPurpose())
            .append("bookerId", getBookerId())
            .append("serviceStaffId", getServiceStaffId())
            .append("djId", getDjId())
            .append("bookerName", getBookerName())
            .append("serviceStaffName", getServiceStaffName())
            .append("djName", getDjName())
            .append("groupNameList", getGroupNameList())
            .append("startTime", getStartTime())
            .append("endTime", getEndTime())
            .append("bookerEntryCount", getBookerEntryCount())
            .append("serviceStaffEntryCount", getServiceStaffEntryCount())
            .append("djEntryCount", getDjEntryCount())
            .append("totalAmount", getTotalAmount())
            .append("discount", getDiscount())
            .append("serviceStaffPayment", getServiceStaffPayment())
            .append("djPayment", getDjPayment())
            .append("salespersonPayment", getSalespersonPayment())
            .append("aa", getAa())
            .append("bb", getBb())
            .append("cc", getCc())
                .append("ee", getEe())
                .append("ff", getFf())
            .append("remark", getRemark())
            .append("createdAt", getCreatedAt())
            .append("updatedAt", getUpdatedAt())
            .toString();
    }
}
